A Generic Approach of Static Analysis for Detecting Runtime Errors in Java Programs
نویسندگان
چکیده
This paper presents a generic approach to statically analyze Java programs in order to detect potential er rors bugs We discuss a framework that supports our approach and carries out the static analysis of Java code automatically Our approach can automatically detect potential bugs and report them before the pro gram is executed For a Java class invariants related to the category of error under examination are au tomatically generated and used to assess the validity of variable usage in the implementation of this class Our approach is distinctive in its emphasis to provide a practical generic mechanism for error detection that is capable of addressing error detection for a variety of error categories via a web of specialized components A research prototype has been developed that demon strates the feasibility and e ectiveness of our approach
منابع مشابه
Generic Invariant-Based Static Analysis Tool for Detection of Runtime Errors in Java Programs
متن کامل
A class loading sensitive approach to detection of runtime type errors in component-based Java programs
Context: The employment of class loaders in component-based Java programs may introduce runtime type errors, which may happen at any statement related to class loading, and may be wrapped into various types of exceptions raised by JVM. Traditional static analysis approaches are inefficient to detect
متن کاملHAVE: Detecting Atomicity Violations via Integrated Dynamic and Static Analysis
The reality of multi-core hardware has made concurrent programs pervasive. Unfortunately, writing correct concurrent programs is difficult. Atomicity violation, which is caused by concurrent executions unexpectedly violating the atomicity of a certain code region, is one of the most common concurrency errors. However, atomicity violation bugs are hard to find using traditional testing and debug...
متن کاملApplying Static Analysis for Detecting Null Pointers in Java Programs
The detection of bugs in software has been a difficult and time-consuming manual task. Some bugs are hard to find as they manifest themselves far from the actual errors such as dereferencing null-pointer. To avoid these bugs, a useful static program analysis tool would inspect a program for presence of such errors. The goal of static analysis is to detect common run-time errors that are not det...
متن کاملGuided Testing of Concurrent Programs Using Value Schedules
Testing concurrent programs remains a difficult task due to the non-deterministic nature of concurrent execution. Many approaches have been proposed to tackle the complexity of uncovering potential concurrency bugs. Static analysis tackles the problem by analyzing a concurrent program looking for situations/patterns that might lead to possible errors during execution. In general, static analysi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999